home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / tex / td187src.lzh / WINUTILS.I < prev   
Text File  |  1991-12-14  |  3KB  |  83 lines

  1. IMPLEMENTATION MODULE WinUtils;
  2.  
  3. FROM SYSTEM IMPORT CADR;
  4. FROM MagicSys IMPORT sINTEGER, CastToInt;
  5. IMPORT MagicAES;
  6.  
  7. PROCEDURE SetWinTop( WinHandle : sINTEGER );
  8. (* Setze das Fenster an oberste Position *)
  9. VAR pxy : ARRAY [0..3] OF sINTEGER;
  10. BEGIN
  11.   pxy[0] := WinHandle;
  12.   pxy[1] := 0;  pxy[2] := 0;  pxy[3] := 0;
  13.   MagicAES.WindSet ( WinHandle , MagicAES.WFTOP , pxy);
  14. END SetWinTop;
  15.  
  16. PROCEDURE IsWinTop( WinHandle : sINTEGER ) : BOOLEAN;
  17. (* Liegt das Fenster an oberster Position *)
  18. VAR top : ARRAY [0..3] OF sINTEGER;
  19. BEGIN
  20.   MagicAES.WindGet(WinHandle, MagicAES.WFTOP, top);
  21.   RETURN top[0] = WinHandle;
  22. END IsWinTop;
  23.  
  24. (* Setze den Namen bzw. die Info-Zeile des angegebenen Fensters *)
  25. PROCEDURE SetWinInfo( WinHandle : sINTEGER; REF InfoStr : ARRAY OF CHAR );
  26. VAR pxy : ARRAY [0..3] OF sINTEGER;
  27. BEGIN
  28.   pxy[0] := CastToInt(CADR ( InfoStr ) DIV 10000H);
  29.   pxy[1] := CastToInt(CADR ( InfoStr ) MOD 10000H);
  30.   pxy[2] := 0;  pxy[3] := 0;
  31.   MagicAES.WindSet ( WinHandle , MagicAES.WFINFO , pxy);
  32. END SetWinInfo;
  33.  
  34. (* Setze den Namen des angegebenen Fensters *)
  35. PROCEDURE SetWinTitle( WinHandle : sINTEGER; REF TitleStr : ARRAY OF CHAR );
  36. VAR pxy : ARRAY [0..3] OF sINTEGER;
  37. BEGIN
  38.   pxy[0] := CastToInt(CADR ( TitleStr ) DIV 10000H);
  39.   pxy[1] := CastToInt(CADR ( TitleStr ) MOD 10000H);
  40.   pxy[2] := 0;  pxy[3] := 0;
  41.   MagicAES.WindSet ( WinHandle , MagicAES.WFNAME , pxy);
  42. END SetWinTitle;
  43.  
  44. PROCEDURE SetSliderSize( WinHandle : sINTEGER; sx, sy : sINTEGER);
  45. VAR small : ARRAY [0..3] OF sINTEGER;
  46. BEGIN
  47.   small[1] := 0; small[2] := 0; small[3] := 0;
  48.   small[0] := sx;
  49.   MagicAES.WindSet (WinHandle , MagicAES.WFHSLSIZE , small);
  50.   small[0] := sy;
  51.   MagicAES.WindSet (WinHandle , MagicAES.WFVSLSIZE , small);
  52. END SetSliderSize;
  53.  
  54. PROCEDURE SetSliderPos( WinHandle : sINTEGER; hx, hy : sINTEGER);
  55. VAR small : ARRAY [0..3] OF sINTEGER;
  56. BEGIN
  57.   small[1] := 0; small[2] := 0; small[3] := 0;
  58.   small[0] := hx;
  59.   MagicAES.WindSet (WinHandle , MagicAES.WFHSLIDE, small);
  60.   small[0] := hy;
  61.   MagicAES.WindSet (WinHandle , MagicAES.WFVSLIDE , small);
  62. END SetSliderPos;
  63.  
  64. PROCEDURE GetWinSize( WinHandle : sINTEGER; VAR size : ARRAY OF sINTEGER);
  65. (* Index 0 : x, 1 : y, 2 : w, 3 : h *)
  66. BEGIN
  67.   MagicAES.WindGet (WinHandle, MagicAES.WFWORKXYWH , size);
  68. END GetWinSize;
  69.  
  70. PROCEDURE GetFirstWinRec( WinHandle : sINTEGER; VAR size : ARRAY OF sINTEGER);
  71. (* Index 0 : x, 1 : y, 2 : w, 3 : h *)
  72. BEGIN
  73.   MagicAES.WindGet (WinHandle, MagicAES.WFFIRSTXYWH , size);
  74. END GetFirstWinRec;
  75.  
  76. PROCEDURE GetNextWinRec ( WinHandle : sINTEGER; VAR size : ARRAY OF sINTEGER);
  77. (* Index 0 : x, 1 : y, 2 : w, 3 : h *)
  78. BEGIN
  79.   MagicAES.WindGet (WinHandle, MagicAES.WFNEXTXYWH , size);
  80. END GetNextWinRec;
  81.  
  82. END WinUtils.
  83.